{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "09210478-bed6-4228-bef9-e401725a3aaa",
   "metadata": {},
   "source": [
    "Chapter 06\n",
    "# 混合两个一元高斯分布随机数\n",
    "Book_1《编程不难》 | 鸢尾花书：从加减乘除到机器学习 "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "af568af9-6fa5-46b2-a709-e0c8bd112665",
   "metadata": {},
   "outputs": [],
   "source": [
    "import random\n",
    "import statistics\n",
    "import matplotlib.pyplot as plt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "07d459dd-1f52-4dd9-a3e2-99c7682e9e21",
   "metadata": {},
   "outputs": [],
   "source": [
    "random.seed(0) # 方便复刻结果\n",
    "# 生成300个服从N(0, 1**2)的随机数\n",
    "mean1, std1, size1 = 0, 1, 300\n",
    "data1 = [random.gauss(mean1, std1) for _ in range(size1)]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "26c47ce3-36d2-4ae9-8c45-2f16f1888ec3",
   "metadata": {},
   "outputs": [],
   "source": [
    "# 生成700个服从N(10, 5**2)的随机数 \n",
    "mean2, std2, size2 = 10, 5, 700\n",
    "data2 = [random.gauss(mean2, std2) for _ in range(size2)]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "5cf7ebd7-b400-4ac0-bb93-b20aacb17ce1",
   "metadata": {},
   "outputs": [],
   "source": [
    "# 将两组随机数混合\n",
    "mixed_data = data1 + data2\n",
    "mean_loc = statistics.mean(mixed_data)\n",
    "std_loc  = statistics.stdev(mixed_data)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "2335bb3a-a1fc-4c90-b877-a7a895d5bac9",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkEAAAHFCAYAAAD1zS3+AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/MnkTPAAAACXBIWXMAAA9hAAAPYQGoP6dpAABepUlEQVR4nO3deVxU9f4/8NcwzAIIooCACjjmhmma+M2gEC2F3HK9caVwAw0xF8j7u4KaS6XmFnZzuam4VLiUZt2ilMytUFPTrt64VgqDKSSOKSowMwzn9wcx15FBZoaBYZjX8/GYRzOf8/mc8z6fOUNvz/l8zhEJgiCAiIiIyME42ToAIiIiIltgEkREREQOiUkQEREROSQmQUREROSQmAQRERGRQ2ISRERERA6JSRARERE5JCZBRERE5JCYBBEREZFDYhJEVE+2bt0KkUiE06dPG10+dOhQtGvXzqCsXbt2mDBhglnbyc7OxsKFC3Hr1i3LAnVAu3btwqOPPgoXFxeIRCKcO3fOaL3Dhw9DJBJBJBJh69atRus888wzEIlEVvkurWHChAnVYjGmX79++n1zcnKCu7s7OnTogL/85S/4+OOPUVFRYXEMGRkZSEtLs7g9UUNhEkTUiHzyySeYP3++WW2ys7OxaNEiJkEmKioqQmxsLB555BF89dVXOH78ODp16vTQNu7u7ti8eXO18tzcXBw+fBgeHh7VllnyXTa09u3b4/jx48jOzsa+ffswZ84clJaW4i9/+Qv69euH27dvW7ReJkFkL5xtHQAR/c/jjz9u6xDMptVqIRKJ4OxsH39Ofv75Z2i1Wrz00kuIiIgwqU10dDQ2bdqEX375BR07dtSXp6eno02bNujevTt++ukngzb28F26uLjgySefNCiLj4/Hli1bMGnSJEyZMgW7du2yUXRE9Y9ngogakQcvoVRUVOCNN95A586d4eLiAk9PTzz22GNYs2YNAGDhwoX429/+BgBQKBT6yxuHDx/Wt1++fDm6dOkCmUyGVq1aYdy4cfjtt98MtisIApYsWYKgoCDI5XL07t0bWVlZ6NevH/r166evV3V56P3338err76KNm3aQCaT4ddff0VRURESExPRtWtXNGvWDK1atcIzzzyDY8eOGWwrLy8PIpEIK1aswFtvvYV27drBxcUF/fr10ycoc+bMQevWrdG8eXOMHDkS169fN6n/PvvsM4SGhsLV1RXu7u4YOHAgjh8/rl8+YcIEPP300wAqExuRSGSwfzUZOHAgAgICkJ6ebvDdbNu2DePHj4eTU/U/pQ9+lwkJCZDL5Thz5ozBOp599ln4+vqioKBAX75r1y6EhobCzc0NzZo1Q1RUFM6ePVttG1u3bkXnzp0hk8kQHByM7du317ovppg4cSIGDx6Mjz76CEqlUl++du1a9O3bF61atYKbmxu6d++O5cuXQ6vV6uv069cPX3zxBZRKpf54FIlE+uWLFi1Cnz590LJlS3h4eKBXr17YvHkz+CxvsgX7+KcbkR3T6XQoLy+vVm7KH/3ly5dj4cKFmDdvHvr27QutVov//ve/+ktf8fHxuHnzJv7xj39g79698Pf3BwB07doVADB16lS89957eOWVVzB06FDk5eVh/vz5OHz4MH744Qd4e3sDAObOnYulS5diypQpGDVqFK5cuYL4+HhotVqjl4pSUlIQGhqKDRs2wMnJCa1atUJRUREAYMGCBfDz88Pdu3fxySefoF+/fjh48GC1ZGPt2rV47LHHsHbtWty6dQuvvvoqhg0bhj59+kAikSA9PR1KpRKzZ89GfHw8Pvvss4f2VUZGBl588UVERkZix44dUKvVWL58uX77Tz/9NObPn48nnngC06ZNw5IlS9C/f3+jl7Ie5OTkhAkTJmDz5s144403IBaLceDAAfz222+YOHEiZs6cWes60tLScPLkSbzwwgs4c+YMPD09sWjRIhw+fBhfffWV/rtbsmQJ5s2bh4kTJ2LevHnQaDRYsWIFwsPD8f333+u/261bt2LixIkYPnw4Vq1ahdu3b2PhwoVQq9VGkzJzPf/888jMzMSxY8cQFBQEALh06RJiYmKgUCgglUrx448/4s0338R///tffYK4bt06TJkyBZcuXcInn3xSbb15eXl4+eWXERgYCAA4ceIEpk+fjqtXr+K1116rc9xEZhGIqF5s2bJFAPDQV1BQkEGboKAgYfz48frPQ4cOFXr27PnQ7axYsUIAIOTm5hqU5+TkCACExMREg/KTJ08KAITU1FRBEATh5s2bgkwmE6Kjow3qHT9+XAAgRERE6MsOHTokABD69u1b6/6Xl5cLWq1WePbZZ4WRI0fqy3NzcwUAQo8ePQSdTqcvT0tLEwAIzz//vMF6Zs2aJQAQbt++XeO2dDqd0Lp1a6F79+4G67xz547QqlUrISwsrNo+fPTRR7Xuw/11L1++LIhEIuHzzz8XBEEQ/vKXvwj9+vUTBEEQhgwZUut3KQiC8MsvvwgeHh7CiBEjhK+//lpwcnIS5s2bp1+en58vODs7C9OnTzdod+fOHcHPz0944YUXDPa3V69eQkVFhb5eXl6eIJFIqsViTEREhPDoo4/WuPzLL78UAAhvvfWW0eU6nU7QarXC9u3bBbFYLNy8eVO/zFh/PGwdixcvFry8vAz2hagh8HIYUT3bvn07Tp06Ve1VdVnmYZ544gn8+OOPSExMxP79+1FcXGzydg8dOgQA1WYoPfHEEwgODsbBgwcBVP5LXK1W44UXXjCo9+STT9Y4y2j06NFGyzds2IBevXpBLpfD2dkZEokEBw8eRE5OTrW6gwcPNjhjERwcDAAYMmSIQb2q8vz8/Br2FLh48SKuXbuG2NhYg3U2a9YMo0ePxokTJ1BSUlJje1MoFAr069cP6enpUKlU+PTTTzFp0iSz1tGhQwds3LgR+/btw9ChQxEeHo6FCxfql+/fvx/l5eUYN24cysvL9S+5XI6IiAj9Zc6q/Y2JiTG41BQUFISwsLA67WcVwciZyrNnz+L555+Hl5cXxGIxJBIJxo0bB51Oh59//tmk9X7zzTcYMGAAmjdvrl/Ha6+9BpVKZfJlTyJrYRJEVM+Cg4PRu3fvaq/mzZvX2jYlJQUrV67EiRMnMGjQIHh5eeHZZ5+tcdr9/VQqFQDoL7Pcr3Xr1vrlVf/19fWtVs9YWU3rXL16NaZOnYo+ffpgz549OHHiBE6dOoXnnnsOpaWl1eq3bNnS4LNUKn1oeVlZmdFY7t+Hmva1oqICf/zxR43tTRUXF4d//etfWL16NVxcXDBmzBiz1zFkyBD4+vqirKwMycnJEIvF+mW///47AOD//u//IJFIDF67du3CjRs3APxvf/38/Kqt31iZJarGArVu3RpAZRIaHh6Oq1evYs2aNTh27BhOnTqFtWvXAoDR7/hB33//PSIjIwEAGzduxHfffYdTp05h7ty5Jq+DyJo4JoioEXN2dkZycjKSk5Nx69YtfP3110hNTUVUVBSuXLkCV1fXGtt6eXkBAAoKCtC2bVuDZdeuXdOPB6qqV/U/4PsVFhYaPRt0/9mHKh988AH69euH9evXG5TfuXPn4TtpBffv64OuXbsGJycntGjRos7bGTVqFKZNm4Zly5Zh8uTJcHFxMXsdCQkJuHPnDh599FHMmDED4eHh+tiqvpOPP/5YPw7HmKr9LSwsrLbMWJklPvvsM4hEIvTt2xcAsG/fPty7dw979+41iK2meywZs3PnTkgkEnz++eeQy+X68n379lklZiJz8UwQkZ3w9PTEmDFjMG3aNNy8eRN5eXkAAJlMBqD6v6KfeeYZAJXJyf1OnTqFnJwcPPvsswCAPn36QCaTVZsKfeLECYOZQbURiUT6WKr8+9//NpidVV86d+6MNm3aICMjw+Ayzr1797Bnzx79jLG6cnFxwWuvvYZhw4Zh6tSpZrfftGkTPvjgA7z77rv47LPPcOvWLUycOFG/PCoqCs7Ozrh06ZLRs4e9e/fW76+/vz927NhhsL9KpRLZ2dl13s8tW7bgyy+/xNixY/UDmKsS3/u/Y0EQsHHjxmrtZTKZ0bM6VbdSuP/sV2lpKd5///06x0xkCZ4JImrEhg0bhm7duqF3797w8fGBUqlEWloagoKC9Per6d69OwBgzZo1GD9+PCQSCTp37ozOnTtjypQp+Mc//gEnJycMGjRIPzssICAASUlJACovPyUnJ2Pp0qVo0aIFRo4cid9++w2LFi2Cv7+/yTONhg4ditdffx0LFixAREQELl68iMWLF0OhUBidHWdNTk5OWL58OV588UUMHToUL7/8MtRqNVasWIFbt25h2bJlVttW1Zk5c50/fx4zZszA+PHj9YnP5s2bMWbMGKSlpWHWrFlo164dFi9ejLlz5+Ly5ct47rnn0KJFC/z+++/4/vvv4ebmhkWLFsHJyQmvv/464uPjMXLkSEyePBm3bt3CwoULzbocVlpaihMnTujfX758Gfv27cPnn3+OiIgIbNiwQV934MCBkEqlGDt2LP7f//t/KCsrw/r1641eZuzevTv27t2L9evXIyQkBE5OTujduzeGDBmC1atXIyYmBlOmTIFKpcLKlSurJc9EDca247KJmq6q2WGnTp0yutyUGUWrVq0SwsLCBG9vb0EqlQqBgYFCXFyckJeXZ9AuJSVFaN26teDk5CQAEA4dOiQIQuXsm7feekvo1KmTIJFIBG9vb+Gll14Srly5YtC+oqJCeOONN4S2bdsKUqlUeOyxx4TPP/9c6NGjh8HMrofNrFKr1cLs2bOFNm3aCHK5XOjVq5ewb98+Yfz48Qb7WTU7bMWKFQbta1p3bf14v3379gl9+vQR5HK54ObmJjz77LPCd999Z9J2jDG1bm3f5d27d4UuXboIXbt2Fe7du2dQb9q0aYJEIhFOnjxpsB/9+/cXPDw8BJlMJgQFBQljxowRvv76a4O2mzZtEjp27ChIpVKhU6dOQnp6erX+rklERITBTEU3Nzehffv2wpgxY4SPPvrIYJZdlX/9619Cjx49BLlcLrRp00b429/+pp9FVnXMCULljMMxY8YInp6egkgkEu7/X016errQuXNnQSaTCe3btxeWLl0qbN682egMR6L6JhIE3qGKiKrLzc1Fly5dsGDBAqSmpto6HCIiq2MSRET48ccfsWPHDoSFhcHDwwMXL17E8uXLUVxcjAsXLtQ4S4yIyJ5xTBARwc3NDadPn8bmzZtx69YtNG/eHP369cObb77JBIiImiyeCSIiIiKHxCnyRERE5JCYBBEREZFDYhJEREREDokDo42oqKjAtWvX4O7ubvTxAERERNT4CIKAO3fuoHXr1ibd6JVJkBHXrl1DQECArcMgIiIiC1y5cqXaMxONYRJkhLu7O4DKTvTw8LBxNI2LVqvFgQMHEBkZCYlEYl5jnQ44/mPl+9AewH3PD3JUdepPa7p3D/jzaeG4dg1wc7NdLBZqNH1pbTb63TTZ/rQB9qX11NaXxcXFCAgI0P9/vDZMgoyougTm4eHBJOgBWq0Wrq6u8PDwsCwJcmtW+d7Dg0kQ6tif1nT/d+HhYbdJUKPoS2uz0e+myfanDbAvrcfUvjR1KIvNB0avW7cOCoUCcrkcISEhOHbsWI11CwoKEBMTg86dO8PJyQmzZs2qVmfjxo0IDw9HixYt0KJFCwwYMADff/99Pe4BERER2SObJkG7du3CrFmzMHfuXJw9exbh4eEYNGgQ8vPzjdZXq9Xw8fHB3Llz0aNHD6N1Dh8+jLFjx+LQoUM4fvw4AgMDERkZiatXr9bnrhAREZGdsWkStHr1asTFxSE+Ph7BwcFIS0tDQEAA1q9fb7R+u3btsGbNGowbNw7Nmzc3WufDDz9EYmIievbsiS5dumDjxo2oqKjAwYMH63NXiIiIyM7YbEyQRqPBmTNnMGfOHIPyyMhIZGdnW207JSUl0Gq1aNmyZY111Go11Gq1/nNxcTGAymuPWq3WarE0BVX9YVG/6HSouoKr1WqBigrrBWan6tSf1g3E8LuxdTwWaDR9aW02+t009v7U6XQoLy+HPTz5qby8HM7Ozrh79y6cnTkUty50Oh2Amo9Lc49Xm30bN27cgE6nq/ZwRl9fXxQWFlptO3PmzEGbNm0wYMCAGussXboUixYtqlZ+4MABuLq6Wi2WpiQrK8vsNmKIMNSzcgbS/v0HoEPj/+PVUCzpT2sSl5Vh6J/v9+/fD51cbtN46sLWfWlttv7dNMb+dHd3h7u7u0n3gWks/Pz8cPnyZVuH0ST4+vri4MGDqDDyD4KSkhKz1mXzlPTBEdyCIFjtBoXLly/Hjh07cPjwYcgf8kc9JSUFycnJ+s9VU+wiIyM5O+wBWq0WWVlZGDhwoGWzw05eAABERUVydhjq2J/WdO+e/m1UVJTdzg5rFH1pbTb63TTW/vz9999RXFwMHx8fuLq62sUNbQVBwL179+Dm5mYX8TZmOp0OSqUSPj4+CAgIqNafVVdyTGWzJMjb2xtisbjaWZ/r169XOztkiZUrV2LJkiX4+uuv8dhjjz20rkwmg0wmq1YukUga1Y+/MbGob+77V5tEImESdB+bH2v3bVsikRh8tjc270trs/HvpjH1p06nw507d+Dr6wsvLy9bh2OyiooKaLVauLi42NXZq8aooqICLVu2xK1btyASiaodm+Yeqzb7NqRSKUJCQqqdas3KykJYWFid1r1ixQq8/vrr+Oqrr9C7d+86rYuIiBqHqvEeHKbg2KrGVVWND6rTuuq8hjpITk5GbGwsevfujdDQULz33nvIz89HQkICgMrLVFevXsX27dv1bc6dOwcAuHv3LoqKinDu3DlIpVJ07doVQOUlsPnz5yMjIwPt2rXTn2lq1qwZmjVr1rA7SEREVsdLSmQtNk2CoqOjoVKpsHjxYhQUFKBbt27IzMxEUFAQgMqbIz54z6DHH39c//7MmTPIyMhAUFAQ8vLyAFTefFGj0WDMmDEG7RYsWICFCxfW6/4QERGR/bD5wOjExEQkJiYaXbZ169ZqZbVNh6xKhoiIiIgehiO0iIiI6lliYiLEYrF+uMeDy0QiESZMmNDwgTk4JkFEREQNICAgADt37kRpaam+rKysDDt27EBgYKANI3NcTIKIiIgawOOPP47AwEDs3btXX7Z3714EBAQYjHcVBAHLly9H+/bt4eLigh49euDjjz/WL9fpdIiLi4NCoYCLiws6d+6MNWvWGGxrwoQJGDFiBFauXAl/f394eXlh2rRpjfYO4LZi8zFB1HCKiorMvpFUFQ8PD/j4+Fg5IiKiOhIEwMy7BFuNqytg5ky1iRMnYsuWLXjxxRcBAOnp6Zg0aRIOHz6srzNv3jzs3bsX69evR8eOHXH06FG89NJL8PHxQUREBCoqKtC2bVvs3r0b3t7eyM7OxpQpU+Dv748XXnhBv55Dhw7B398fhw4dwq+//oro6Gj07NkTkydPtsruNwVMghxEUVERYmKmQqVS117ZCC8vGTIy1sPT09O6gRER1UVJCWCr25/cvWv23dVjY2ORkpKCvLw8iEQifPfdd9i5c6c+Cbp37x5Wr16Nb775BqGhoQCA9u3b49tvv8U///lPREREQCKRGDzqSaFQIDs7G7t37zZIglq0aIF3330XYrEYXbp0wZAhQ3Dw4EEmQfdhEuQgiouLoVKpIZO9CheXALPalpZegUq1CsXFxUyCiIjqwNvbG0OGDMG2bdsgCAKGDBkCb29v/fKffvoJZWVlGDhwoEE7jUZjcMlsw4YN2LRpE5RKJUpLS6HRaNCzZ0+DNo8++ijE991h3N/fH+fPn6+fHbNTTIIcjItLANzcHjG7ndqyE0hERPXL1bXyjIyttm2BSZMm4ZVXXgEArF271mBZ1UNBv/jiC7Rp08ZgWdXjnXbv3o2kpCSsWrUKoaGhcHd3x4oVK3Dy5EmD+g8+QkIkEhl96KgjYxJERET2SySyuwf+Pvfcc9BoNAD+fGDxfbp27QqZTIb8/HxEREQYbX/s2DGEhYUZ3GPv0qVL9RdwE8YkiIiIqAGJxWLk5OTo39/P3d0ds2fPRlJSEioqKvD000+juLgY2dnZaNasGcaPH48OHTpg+/bt2L9/PxQKBd5//32cOnUKCoXCFrtj15gEERERNTAPD48al73++uto1aoVli5disuXL8PT0xO9evVCamoqACAhIQHnzp1DdHQ0RCIRxo4di8TERHz55ZcNFX6TwSSIiIionq1bt+6hic++ffv070UiEWbMmIEZM2YYrSuTybBlyxZs2bLFoHzp0qX698YeO5WWlmZWzI6AN0skIiIih8QkiIiIiBwSL4eRSbRaNZRKJXQ6HQAgNze32oC+mvBu00RE1BgxCaJaaTQqKJWXMX36Mri7N0NKyniMGzcHGo1pz6Cputu0T8uW9RwpERGR6ZgEUa10ursoL5dCKk2Cp+cjAHLg6bkMGk3tZ4Luv9s0kyAiImpMmASRyeTytnB1VQDIgaurotrdSGvCu00TEVFjxIHRRERE5JCYBBEREZFDYhJEREREDolJEBERETUq/fr1w6xZs+p9O0yCiIiI6lliYiLEYjESEhKMLhOJRJgwYULDB9aADh8+DJFIhFu3btk6FD0mQURERA0gICAAO3fuRGlpqb6srKwMO3bsQGBgoA0jq9nChQubdHLGJIiIiKgBPP744wgMDMTevXv1ZXv37kVAQAAef/xxg7qCIGD58uVo3749XFxc0KNHD3z88cf65TqdDnFxcVAoFHBxcUHnzp2xZs0ag3VMmDABI0aMwMqVK+Hv7w8vLy9MmzYNWq1pN7q1hFKpxLBhw9CiRQu4ubnh0UcfRWZmJvLy8tC/f38AQIsWLQzOfN27dw/jxo1Ds2bN4O/vj1WrVtVbfA/ifYKIiMh+CQJQUWGbbTs5ASKRWU0mTpyILVu24MUXXwQApKenY9KkSTh8+LBBvXnz5mHv3r1Yv349OnbsiKNHj+Kll16Cj48PIiIiUFFRgbZt22L37t3w9vZGdnY2pkyZAn9/f7zwwgv69Rw6dAj+/v44dOgQfv31V0RHR6Nnz56YPHlynXffmGnTpkGj0eDo0aNwc3PDTz/9hGbNmiEgIAB79uzB6NGjcfHiRXh4eMDFxQUA8Le//Q2HDh3CJ598Aj8/P6SmpuLMmTPo2bNnvcR4PyZBRERkvyoqgG/P2mbbTz8OmPgMxSqxsbFISUlBXl4eRCIRvvvuO+zcudMgCbp37x5Wr16Nb775BqGhoQCA9u3b49tvv8U///lPREREQCKRYNGiRfo2CoUC2dnZ2L17t0ES1KJFC7z77rsQi8Xo0qULhgwZgoMHD9aYBB07dgyDBg3Sf9ZoNBAEweAsVGpqKlJTU422z8/Px+jRo9G9e3d93FVa/vnUgFatWsHT0xMAcPfuXWzevBnbt2/HwIEDAQDbtm1D27Zta+1La2ASRERE1EC8vb0xZMgQbNu2DYIgYMiQIfD29jao89NPP6GsrEyfFFTRaDQGl802bNiATZs2QalUorS0FBqNptrZk0cffdTgYdf+/v44f/58jfH17t0b586d039+5513cPXqVbz11lv6spYPeQTSjBkzMHXqVBw4cAADBgzA6NGj8dhjj9VY/9KlS9BoNPpkr2r9nTt3rrGNNTEJIiIi++XkVHlGxlbbtsCkSZPwyiuvAADWrl1bbXnFn5f3vvjiC7Rp08ZgmUwmAwDs3r0bSUlJWLVqFUJDQ+Hu7o4VK1bg5MmTBvUffLyRSCTSr98YFxcXdOjQQf+5ZcuWKC4uNih7mPj4eERFReGLL77AgQMHsHTpUqxatQrTp083Wl8QBJPWW1+YBBERkf0Sicy+JGVrzz33HDQaDQAgKiqq2vKuXbtCJpMhPz8fERERRtdx7NgxhIWFITExUV926dKl+gnYTAEBAUhISEBCQgJSUlKwceNGTJ8+HVKpFEDloO4qHTp0gEQiwYkTJ/Qz5P744w/8/PPPNe67NTEJIiIiakBisRg5OTn69w9yd3fH7NmzkZSUhIqKCjz99NMoLi5GdnY2mjVrhvHjx6NDhw7Yvn079u/fD4VCgffffx+nTp2CQqGoU2wajQY3b97Uf666r1FhYaG+rFmzZmjWrJnR9rNmzcKgQYPQqVMn/PHHH/jmm28QHBwMAAgKCoJIJMLnn3+OwYMHw8XFBc2aNUNcXBz+9re/wcvLC76+vpg7dy6cLDzLZi4mQURERA3Mw8Pjoctff/11tGrVCkuXLsXly5fh6emJXr166QckJyQk4Ny5c4iOjoZIJMLYsWORmJiIL7/8sk5xZWdn66ey12TBggVYuHCh0WU6nQ7Tpk3Db7/9Bg8PDzz33HN4++23AQBt2rTBokWLMGfOHEycOBHjxo3D1q1bsWLFCty9exfPP/883N3d8eqrr+L27dt12g9TMQkiIiKqZ+vWrXto4rNv3z6DzyKRCDNmzMCMGTOM1pfJZNiyZQu2bNliUL506VL9+61bt1Zrl5aW9tA4+/XrV6dxOv/4xz8eunz+/PmYP3++QVmzZs3w/vvv4/3339eX/e1vf7M4BnPwZolERETkkJgEERERkUNiEkREREQOiUkQEREROSQmQUREROSQmAQRERGRQ2ISRERERA6JSRARERE5JCZBRERE5JB4x2giIrJ7RUVFKC4ubrDteXh4wMfHp97W369fP/Ts2bPWOzzXxcKFC7Fv3z6cO3fO5DaHDx9G//798ccff8DT07PeYmsoTIKIiMiuFRUVISZmKlQqdYNt08tLhoyM9SYnQomJidixYwdefvllbNiwodqy9evXY/z48fpHXezduxcSicTaYdtEQyR0lmISREREdq24uBgqlRoy2atwcQmo9+2Vll6BSrUKxcXFZp0NCggIwM6dO/H222/DxcUFAFBWVoYdO3YgMDDQoG7Lli2tGjMZxzFBRETUJLi4BMDN7ZF6f1maaD3++OMIDAzE3r179WV79+5FQEAAHn/8cYO6/fr1w6xZswAA//3vf+Hq6oqMjAyDdnK5HOfPnwcA3L59G1OmTEGrVq3g4eGBZ555Bj/++KPBOpctWwZfX1+4u7sjLi4OZWVltcacmZmJTp06wcXFBf3790deXp7BcpVKhbFjx6Jt27ZwdXVF9+7dsWPHDv3yCRMm4MiRI1izZg1EIhFEIhHy8vKg0+kQFxcHhUIBFxcXdO7cGWvWrDGpH62JSRAREVEDmThxosGT39PT0zFp0qSHtunSpQtWrlyJxMREKJVKXLt2DZMnT8ayZcvQvXt3CIKAIUOGoLCwEJmZmThz5gx69eqFZ599Fjdv3gQA7N69GwsWLMCbb76J06dPw9/fH+vWrXvodq9cuYJRo0Zh8ODBOHfuHOLj4zFnzhyDOmVlZQgJCcHnn3+OCxcuYMqUKYiNjcXJkycBAGvWrEFoaCgmT56MgoICFBQUICAgABUVFWjbti12796Nn376Ca+99hpSU1Oxe/duS7rVYrwcRkRE1EBiY2ORkpKCvLw8iEQifPfdd9i5cycOHz780HaJiYnIzMxEbGwspFIpQkJCMHPmTADAoUOHcP78eVy/fh0ymQwAsHLlSuzbtw8ff/wxpkyZgrS0NEyaNAnx8fEAgDfeeANff/31Q88GrV+/Hu3bt8fbb78NkUiEzp074/z583jrrbf0ddq0aYPZs2frP0+fPh1fffUVPvroI/Tp0wfNmzeHVCqFq6sr/Pz89PXEYjEWLVqk/6xQKJCdnY3du3fjhRdeML1D64hJEBERUQPx9vbGkCFDsG3bNv0ZHG9vb5Papqeno1OnTnBycsKFCxcgEokAAGfOnMHdu3fh5eVlUL+0tBSXLl0CAOTk5CAhIcFgeWhoKA4dOlTj9nJycvDkk0/qt1PV5n46nQ7Lli3Drl27cPXqVajVaqjVari5udW6Pxs2bMCmTZugVCpRWloKjUaDnj171trOmpgEERERNaBJkybhlVdeAQCsXbvW5HY//vgj7t27BycnJxQWFqJ169YAgIqKCvj7+xs9m1SXaeyCINRaZ9WqVXj77beRlpaG7t27w83NDbNmzYJGo3lou927dyMpKQmrVq1CaGgo3N3dsWLFCv1ltIZi8zFB69atg0KhgFwuR0hICI4dO1Zj3YKCAsTExKBz585wcnLSDxp70J49e9C1a1fIZDJ07doVn3zyST1FT0REZJ7nnnsOGo0GGo0GUVFRJrW5efMmJkyYgLlz52LixIl48cUXUVpaCgDo1asXCgsL4ezsjA4dOhi8qs4yBQcH48SJEwbrfPDzg7p27Vprm2PHjmH48OF46aWX0KNHD7Rv3x6//PKLQR2pVAqdTletXVhYGBITE/H444+jQ4cO+rNWDcmmSdCuXbswa9YszJ07F2fPnkV4eDgGDRqE/Px8o/XVajV8fHwwd+5c9OjRw2id48ePIzo6GrGxsfjxxx8RGxuLF154ocGzSyIiImPEYjFycnKQk5MDsVhsUpuEhAQEBARg3rx5WL16NQRB0I/FGTBgAEJDQzFixAjs378feXl5yM7Oxrx583D69GkAwMyZM5Geno709HT8/PPPWLBgAf7zn//Uus1Lly4hOTkZFy9eREZGhv4+RlU6dOiArKwsZGdnIycnBy+//DIKCwsN6rRr1w4nT55EXl4ebty4gYqKCnTo0AGnT5/G/v378fPPP2P+/Pk4deqUiT1oPTa9HLZ69WrExcXpB2qlpaVh//79WL9+PZYuXVqtfrt27fRT6NLT042uMy0tDQMHDkRKSgoAICUlBUeOHEFaWprBtD0iImpaSkuv2M12PDw8TK67fft2ZGZm4uzZs3B2doazszM+/PBDhIWFYciQIRg8eDAyMzMxd+5cTJo0CUVFRfDz80Pfvn3h6+sLAIiOjsalS5fw97//HWVlZRg9ejSmTp2K/fv317jdwMBA7NmzB0lJSVi3bh2eeOIJLFmyxGA22/z585Gbm4uoqCi4urpiypQpGDFiBG7fvq2vM3v2bIwfPx5du3ZFaWkpcnNzkZCQgHPnziE6OhoikQhjx45FYmIivvzySwt603I2S4I0Gg3OnDlTbbpdZGQksrOzLV7v8ePHkZSUZFAWFRXVKO9USUREdefh4QEvLxlUqlVQN9BNo728ZGYlMuvWrXto/X379hl8vn98z7hx4zBu3DiD5SEhIVDft7Pu7u5455138M4779S4jdTUVKSmphqU3T/Ty5ihQ4di6NChBmUTJ07Uv2/ZsmW12B/UqVMnHD9+vFr5li1bDG4XAMDoCZD6ZLMk6MaNG9DpdPostYqvr2+1U2nmKCwsNHudVaPZq1Q9f0ar1UKr1VocS2Oi0+kglUogleogkZi3T1KpABcXGaTSCn1bU9chlVZuV6fTQavVouom8FqtFqioMCuOpqjq+LL5cfbgd2PreCzQaPrS2nQ6m/xuGmN/arVaCIKAiooKVNzXD15eXvjgg7UN/uwwLy8vgzhqUjXAuCp2stz9fanVaqtdTjT3eLX57LD7p94BlTv2YFl9r3Pp0qUG9yuocuDAAbi6utYplsYkJWU8gJw/X+ZaCCDvzxcQE5NlRtvxyMnJwc85/8VQz8rZDPv3H4AOtc88cBRZWeb0p/WJy8pQ9W+9/fv3QyeX2zSeurB1X1qbGCKb/m4aU386OzvDz88Pd+/erTb7SCaT1esDTY0xN+m6c+dOPUXieMrKynD06FGUl5cblJeUlJi1HpslQd7e3hCLxdXO0Fy/fr3amRxz+Pn5mb3OlJQUJCcn6z8XFxcjICAAkZGRZp3ubMxyc3MxbtwceHoug6urwqy2KtVRXLgwG926bYWfX0fExGQhI2MgtNraH+5XUpKLW7fmYPv2ZVAEBgInLwAAoqIiARMHBDZlWq0WWVlZGDhwoG0flnjvnv5tVFQUYMI9PhqbRtOX1qbT2eR30xj7s6ysDFeuXEGzZs0gt6NEXRAE3LlzB+7u7nX+R76jEwQBKpUKcrkcffv2rXYcmJuY2iwJqrrjZVZWFkaOHKkvz8rKwvDhwy1eb2hoKLKysgzGBR04cABhYWE1tpHJZPq7bN5PIpE0mh9/XYnFYmg0Wmg0YrP3SaMRobRUDY3GSZ/4aLUSk5IgjaZyu2Kx4XYlEgmToPvY/Fh78Lux4+Pe5n1pbU7/m8Rri99NY+pPnU4HkUgEJycnODnZ/A4vJqu6BFYVO1nu/r40dmyae6za9HJYcnIyYmNj0bt3b4SGhuK9995Dfn6+/q6WKSkpuHr1KrZv365vc+7cOQDA3bt3UVRUhHPnzkEqlaJr164AKqcB9u3bF2+99RaGDx+OTz/9FF9//TW+/fbbBt8/IiKyPlNu4kdkCpsmQdHR0VCpVFi8eDEKCgrQrVs3ZGZmIigoCEDlzREfvGfQ/U/aPXPmDDIyMhAUFKR/sm1YWBh27tyJefPmYf78+XjkkUewa9cu9OnTp8H2i4iIrK/qX/klJSVwcXGxcTRkK1XjgEy9x9LD2HxgdGJiIhITE40ue/CmTIBp/wIYM2YMxowZU9fQiIioERGLxfD09MT169cBAK6urnYxxqaiogIajQZlZWW8HFZH5eXluHnzJtzc3ODsXPcUxuZJEBERkamqnkRelQjZA0EQUFpaChcXF7tI2hozQRBw9+5dtG/f3ip9ySSIiIjshkgkgr+/P1q1atWo7mH0MFqtFkePHkXfvn0bzSBze1VeXo6DBw9arR+ZBBERkd0Ri8VWGRPSEMRiMcrLyyGXy5kE1ZG1E19enCQiIiKHxCSIiIiIHBKTICIiInJITIKIiIjIITEJIiIiIofEJIiIiIgcEpMgIiIickhMgoiIiMghMQkiIiIih8QkiIiIiBwSkyAiIiJySEyCiIiIyCExCSIiIiKHxCSIiIiIHBKTICIiInJITIKIiIjIITEJIiIiIofEJIiIiIgcEpMgIiIickhMgoiIiMghMQkiIiIih8QkiIiIiBwSkyAiIiJySEyCiIiIyCExCSIiIiKHxCSIiIiIHBKTICIiInJITIKIiIjIITEJIiIiIofEJIiIiIgcEpMgIiIickhMgoiIiMghMQkiIiIih8QkiIiIiBwSkyAiIiJySEyCiIiIyCExCSIiIiKHxCSIiIiIHBKTICIiInJITIKIiIjIITEJIiIiIofEJIiIiIgcEpMgIiIickhMgoiIiMghMQkiIiIih8QkiIiIiBwSkyAiIiJySDZPgtatWweFQgG5XI6QkBAcO3bsofWPHDmCkJAQyOVytG/fHhs2bKhWJy0tDZ07d4aLiwsCAgKQlJSEsrKy+toFIiIiskM2TYJ27dqFWbNmYe7cuTh79izCw8MxaNAg5OfnG62fm5uLwYMHIzw8HGfPnkVqaipmzJiBPXv26Ot8+OGHmDNnDhYsWICcnBxs3rwZu3btQkpKSkPtFhEREdkBZ1tufPXq1YiLi0N8fDyAyjM4+/fvx/r167F06dJq9Tds2IDAwECkpaUBAIKDg3H69GmsXLkSo0ePBgAcP34cTz31FGJiYgAA7dq1w9ixY/H99983zE4RERGRXbBZEqTRaHDmzBnMmTPHoDwyMhLZ2dlG2xw/fhyRkZEGZVFRUdi8eTO0Wi0kEgmefvppfPDBB/j+++/xxBNP4PLly8jMzMT48eNrjEWtVkOtVus/FxcXAwC0Wi20Wq2lu9io6HQ6SKUSSKU6SCTm7ZNUKsDFRQaptELf1tR1SKWV29XpdJXf0Z/lWq0WqKgwK46mqOr4svlx9uB3Y+t4LNBo+tLadDqb/G6abH/aAPvSemrrS3P72GZJ0I0bN6DT6eDr62tQ7uvri8LCQqNtCgsLjdYvLy/HjRs34O/vj7/+9a8oKirC008/DUEQUF5ejqlTp1ZLtu63dOlSLFq0qFr5gQMH4OrqasHeNU4pKeMB5Pz5MtdCAHl/voCYmCwz2o5HTk4Ofs75L4Z6tgYA7N9/ADoIFsTRNGVlmdOf1icuK8PQP9/v378fOrncpvHUha370trEENn0d9PU+tOW2JfWU1NflpSUmLUem14OAwCRSGTwWRCEamW11b+//PDhw3jzzTexbt069OnTB7/++itmzpwJf39/zJ8/3+g6U1JSkJycrP9cXFyMgIAAREZGwsPDw6L9amxyc3MxbtwceHoug6urwqy2KtVRXLgwG926bYWfX0fExGQhI2MgtFpJrW1LSnJx69YcbN++DIrAQODkBQBAVFQkIBZbtC9NiVarRVZWFgYOHAiJpPb+rDf37unfRkVFAW5utovFQo2mL61Np7PJ76bJ9qcNsC+tp7a+rLqSYyqbJUHe3t4Qi8XVzvpcv3692tmeKn5+fkbrOzs7w8vLCwAwf/58xMbG6scZde/eHffu3cOUKVMwd+5cODlVHwsuk8kgk8mqlUskkiZzwIrFYmg0Wmg0YrP3SaMRobRUDY3GSZ/4aLUSk5IgjaZyu2Kx4XYlEgmToPvY/Fh78Lux4+Pe5n1pbff9zbLF76bJ9acNsS+tp6a+NLd/bTY7TCqVIiQkpNopraysLISFhRltExoaWq3+gQMH0Lt3b/2Ol5SUVEt0xGIxBEHQnzUiIiIisukU+eTkZGzatAnp6enIyclBUlIS8vPzkZCQAKDyMtW4ceP09RMSEqBUKpGcnIycnBykp6dj8+bNmD17tr7OsGHDsH79euzcuRO5ubnIysrC/Pnz8fzzz0PMMw9ERET0J5uOCYqOjoZKpcLixYtRUFCAbt26ITMzE0FBQQCAgoICg3sGKRQKZGZmIikpCWvXrkXr1q3xzjvv6KfHA8C8efMgEokwb948XL16FT4+Phg2bBjefPPNBt8/IiIiarxsPjA6MTERiYmJRpdt3bq1WllERAR++OGHGtfn7OyMBQsWYMGCBdYKkYiIiJogmz82g4iIiMgWmAQRERGRQ2ISRERERA6JSRARERE5JCZBRERE5JCYBBEREZFDYhJEREREDolJEBERETkkJkFERETkkJgEERERkUNiEkREREQOiUkQEREROSQmQUREROSQmAQRERGRQ2ISRERERA6JSRARERE5JCZBRERE5JCYBBEREZFDYhJEREREDolJEBERETkkJkFERETkkJgEERERkUNiEkREREQOiUkQEREROSQmQUREROSQmAQRERGRQ2ISRERERA7JoiQoNzfX2nEQERERNSiLkqAOHTqgf//++OCDD1BWVmbtmIiIiIjqnbMljX788Uekp6fj1VdfxSuvvILo6GjExcXhiSeesHZ8RERWV1RUhOLiYovaenh4wMfHx8oREZEtWJQEdevWDatXr8by5cvxr3/9C1u3bsXTTz+Njh07Ii4uDrGxsfwjQUSNUlFREWJipkKlUlvU3stLhoyM9fwbR9QEWJQE6Rs7O2PkyJEYPHgw1q1bh5SUFMyePRspKSmIjo7GW2+9BX9/f2vFSkRUZ8XFxVCp1JDJXoWLS4BZbUtLr0ClWoXi4mImQURNQJ2SoNOnTyM9PR07d+6Em5sbZs+ejbi4OFy7dg2vvfYahg8fju+//95asRIRWY2LSwDc3B4xu53ashNIRNQIWZQErV69Glu2bMHFixcxePBgbN++HYMHD4aTU+U4a4VCgX/+85/o0qWLVYMlIiIishaLkqD169dj0qRJmDhxIvz8/IzWCQwMxObNm+sUHBEREVF9sSgJysrKQmBgoP7MTxVBEHDlyhUEBgZCKpVi/PjxVgmSiIiIyNosuk/QI488ghs3blQrv3nzJhQKRZ2DIiIiIqpvFiVBgiAYLb979y7kcnmdAiIiIiJqCGZdDktOTgYAiEQivPbaa3B1ddUv0+l0OHnyJHr27GnVAImIiIjqg1lJ0NmzZwFUngk6f/48pFKpfplUKkWPHj0we/Zs60ZIRI0a775MRPbKrCTo0KFDAICJEydizZo18PDwqJegiMg+8O7LRGTPLJodtmXLFmvHQUR2iHdfJiJ7ZnISNGrUKGzduhUeHh4YNWrUQ+vu3bu3zoERkf3g3ZeJyB6ZnAQ1b94cIpFI/56IqK60WjWUSqVFbTmeiIjqyuQk6P5LYLwcRkR1pdGooFRexvTpyyCTycxuz/FERFRXFo0JKi0thSAI+inySqUSn3zyCbp27YrIyEirBkhETZNOdxfl5VJIpUnw9OxkVluOJyIia7AoCRo+fDhGjRqFhIQE3Lp1C0888QSkUilu3LiB1atXY+rUqdaOk4iaKLm8LccTEZFNWHTH6B9++AHh4eEAgI8//hh+fn5QKpXYvn073nnnHasGSERERFQfLEqCSkpK4O7uDgA4cOAARo0aBScnJzz55JMWD3IkIiIiakgWJUEdOnTAvn37cOXKFezfv18/Duj69etm30Bx3bp1UCgUkMvlCAkJwbFjxx5a/8iRIwgJCYFcLkf79u2xYcOGanVu3bqFadOmwd/fH3K5HMHBwcjMzDQrLiIiImraLEqCXnvtNcyePRvt2rVDnz59EBoaCqDyrNDjjz9u8np27dqFWbNmYe7cuTh79izCw8MxaNAg5OfnG62fm5uLwYMHIzw8HGfPnkVqaipmzJiBPXv26OtoNBoMHDgQeXl5+Pjjj3Hx4kVs3LgRbdq0sWRXiYiIqImyaGD0mDFj8PTTT6OgoAA9evTQlz/77LMYOXKkyetZvXo14uLiEB8fDwBIS0vD/v37sX79eixdurRa/Q0bNiAwMBBpaWkAgODgYJw+fRorV67E6NGjAQDp6em4efMmsrOzIZFIAABBQUGW7CYRERE1YRYlQQDg5+cHPz8/g7InnnjC5PYajQZnzpzBnDlzDMojIyORnZ1ttM3x48erTcGPiorC5s2bodVqIZFI8NlnnyE0NBTTpk3Dp59+Ch8fH8TExODvf/87xGKx0fWq1Wqo75tqUvUwSK1WC61Wa/I+NWY6nQ5SqQRSqQ4SiXn7JJUKcHGRQSqt0Lc1dR1SaeV2dTpd5Xf0Z7lWqwUqKsyKoymqOr5sfpw9+N2YGI+1jyvT2xoeV/q4UXtf1i3m6tutdzqdTX43jebYbALYl9ZTW1+a28ciQRAEc4O4d+8eli1bhoMHD+L69euoeOBHefny5VrXce3aNbRp0wbfffcdwsLC9OVLlizBtm3bcPHixWptOnXqhAkTJiA1NVVflp2djaeeegrXrl2Dv78/unTpgry8PLz44otITEzEL7/8gmnTpmHmzJl47bXXjMaycOFCLFq0qFp5RkaG/l5IVHdiiDDUszUA4PNb16CD2Yce1RNxWRmG/vWvAIDPd+6ETi63cURUhb8bItOVlJQgJiYGt2/fNmmMskVnguLj43HkyBHExsbC399f/zgNSzzYVhCEh67PWP37yysqKtCqVSu89957EIvFCAkJwbVr17BixYoak6CUlBQkJyfrPxcXFyMgIACRkZFmD/RurHJzczFu3Bx4ei6Dq6vCrLYq1VFcuDAb3bpthZ9fR8TEZCEjYyC0WkmtbUtKcnHr1hxs374MisBA4OQFAEBUVCRQw5k5R6LVapGVlYWBAwfqL9/axL17+rdRUVGAm5tJzax1XHl5dTWrrcFxpajcrql9WZeYjW233ul0NvndNJpjswlgX1pPbX1ZdSXHVBYlQV9++SW++OILPPXUU5Y0BwB4e3tDLBajsLDQoPz69evw9fU12sbPz89ofWdnZ3h5eQEA/P39IZFIDC59BQcHo7CwEBqNBlKptNp6ZTKZ0dv2SySSJnPAisViaDRaaDRis/dJoxGhtFQNjcZJn/hotRKTkiCNpnK7YrHhdiUSCZOg+9j8WHvwuzExFmsfV6a3NX5cAbX3Zd1irnm79cbpf/NXbPG7sfmx2YSwL62npr40t38tmh3WokULtGzZ0pKmelKpFCEhIcjKyjIoz8rKMrg8dr/Q0NBq9Q8cOIDevXvrd/ypp57Cr7/+anCJ7ueff4a/v7/RBIiIiIgck0VJ0Ouvv47XXnsNJSUlddp4cnIyNm3ahPT0dOTk5CApKQn5+flISEgAUHmZaty4cfr6CQkJUCqVSE5ORk5ODtLT07F582bMnj1bX2fq1KlQqVSYOXMmfv75Z3zxxRdYsmQJpk2bVqdYiYiIqGmx6HLYqlWrcOnSJfj6+qJdu3bVTj/98MMPJq0nOjoaKpUKixcvRkFBAbp164bMzEz9lPaCggKDewYpFApkZmYiKSkJa9euRevWrfHOO+/op8cDQEBAAA4cOICkpCQ89thjaNOmDWbOnIm///3vluwqERERNVEWJUEjRoywWgCJiYlITEw0umzr1q3VyiIiImpNskJDQ3HixAlrhEdERERNlEVJ0IIFC6wdBxEREVGDsmhMEFD5fK5NmzYhJSUFN2/eBFB5Gezq1atWC46IiIiovlh0Jujf//43BgwYgObNmyMvLw+TJ09Gy5Yt8cknn0CpVGL79u3WjpOIiIjIqixKgpKTkzFhwgQsX74c7u7u+vJBgwYhJibGasFR06DVqqFUKiGqEND+z7LLl3MhONV+k00PDw/4+PjUb4BEROSQLEqCTp06hX/+85/Vytu0aVPtZobk2DQaFZTKy5g+fRmauzdD9luVjzx5Kfb/oUxT+zNevLxkyMhYz0SIiIiszqIkSC6XG7019cWLF/k/KzKg091FebkUUmkSPJt3BHALAODZfDnKtA8/E1RaegUq1SoUFxfzuCIiIquzKAkaPnw4Fi9ejN27dwOofG5Xfn4+5syZY3DPHqIqcnlbuLopAJwFALi6KSDW1n77f7W6ngMjIiKHZdHssJUrV6KoqAitWrVCaWkpIiIi0KFDB7i7u+PNN9+0doxEREREVmfRmSAPDw98++23OHToEM6cOYOKigr06tULAwYMsHZ8RERERPXC7CSooqICW7duxd69e5GXlweRSASFQgE/Pz8IggCRqPYZP0RERES2ZtblMEEQ8PzzzyM+Ph5Xr15F9+7d8eijj0KpVGLChAkYOXJkfcVJREREZFVmnQnaunUrjh49ioMHD6J///4Gy7755huMGDEC27dvN3jyOxEREVFjZNaZoB07diA1NbVaAgQAzzzzDObMmYMPP/zQasERERER1RezkqB///vfeO6552pcPmjQIPz44491DoqIiIiovpmVBN28eRO+vr41Lvf19cUff/xR56CIiIiI6ptZSZBOp4Ozc83DiMRiMcrLy+scFBEREVF9M2tgtCAImDBhAmQymdHlat7el4iIiOyEWUnQ+PHja63DmWFERERkD8xKgrZs2VJfcRARERE1KIueHUZERERk75gEERERkUNiEkREREQOiUkQEREROSSznyJPRNQYaLVqKJVK/WedTgcAyM3NhVgsrrGdUqnk/cyICACTICKyQxqNCkrlZUyfvkx/3zKpVIKUlPEYN24ONBptjW3V6nu4cuV3NG/O+5oROTomQURkd3S6uygvl0IqTYKnZycAgFSqA5ADT89l0GhqPhP0xx8nUF7+JsrLdQ0ULRE1VkyCiAhFRUXw+fP95cuXIbi6mtTO1peW5PK2cHN7BAAgkWgB5MDVVQGJRFJjm9JSZY3LiMixMAkicnBFRUWYNGkW/vXn55de+n8oE5v2p4GXlojInjEJInJwxcXFUKn+l8R4ei5Hmdi0M0G8tERE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\n",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 绘制混合数据的直方图\n",
    "plt.hist(mixed_data, bins=30, density=True, edgecolor='black', \n",
    "         alpha=0.7, color='blue', label='Mixed data')\n",
    "plt.axvline(mean_loc, color = 'red', label='Mean')\n",
    "plt.axvline(mean_loc + std_loc, \n",
    "            color = 'pink', label='Mean ± std')\n",
    "plt.axvline(mean_loc - std_loc, color = 'pink')\n",
    "plt.xlabel('Value')\n",
    "plt.ylabel('Density')\n",
    "plt.legend()\n",
    "plt.title('Histogram of Mixed Data')\n",
    "plt.grid(True)\n",
    "plt.show()"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.10.9"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
